import time

from playwright.sync_api import sync_playwright, ViewportSize
from logging import log

from framework.SuperClass import SuperClass


class Login(SuperClass):

    def goToIssueCmdList(self):
        """
        跳转到下达命令列表

        :return:
        """

        page = self.page
        # Click text=系统管理
        page.click("text=系统管理")
        # Click text=下达动员决心
        page.click("text=下达动员决心")
        # Click a:has-text("下达命令列表")
        page.click("a:has-text(\"下达命令列表\")")
        # assert page.url == "http://localhost:3000/deploy/isssueCmdV1.0.1/DeployIssuedCmdsList"
        page.click("text=全部(25)")

    def login(self):
        self.log.info("start logging to system")
        self.log.info("设置窗口大小")
        # topic start:  设置窗口大小
        self.page.set_viewport_size({"width": 1888, "height": 900})
        # topic end

        self.page.goto("http://localhost:3000/user/login")

        # Click [placeholder="请输入帐户名 / admin"]
        self.page.click("[placeholder=\"请输入帐户名 / admin\"]")

        # Fill [placeholder="请输入帐户名 / admin"]
        self.page.fill("[placeholder=\"请输入帐户名 / admin\"]", "admin")

        # Press Tab
        self.page.press("[placeholder=\"请输入帐户名 / admin\"]", "Tab")

        # Fill [placeholder="密码 / 123456"]
        self.page.fill("[placeholder=\"密码 / 123456\"]", "123456")

        # Click [placeholder="请输入验证码"]
        self.page.click("[placeholder=\"请输入验证码\"]")

        # Fill [placeholder="请输入验证码"]
        self.page.fill("[placeholder=\"请输入验证码\"]", "6666")

        # Click button:has-text("确 定")
        self.page.click("button:has-text(\"确 定\")")
        # time.sleep(20)
        # 欢迎进入贵阳市智能动员大数据信息管理系统

        # Click text=欢迎进入贵阳市智能动员大数据信息管理系统
        self.page.click("text=欢迎进入贵阳市智能动员大数据信息管理系统")
        self.log.info("logging success")
        # ---------------------
        # context.close()
        self.resetToStartPage()
        return self
